﻿using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MyCompanyName.AbpZeroTemplate.Prm.Project
{
    public class ProjectRoleInfo : FullAuditedEntity<int>
    {
        /// <summary>
        /// 角色名称 
        /// </summary>
        public virtual string RoleName { get; set; }

        /// <summary>
        /// 描述 
        /// </summary>
        public virtual string Description { get; set; }

        /// <summary>
        /// 是否参与人力计划
        /// </summary>
        public virtual bool IsHumanWork { get; set; }

        ///// <summary>
        ///// 项目角色匹配规则
        ///// </summary>
        //public virtual string MatchRule { get; set; }


        /// <summary>
        /// 是否为系统保留角色
        /// </summary>
        public virtual bool IsReserved { get; set; }

        ///// <summary>
        ///// 是否可以编辑添加成员
        ///// </summary>
        //public virtual bool IsEdit { get; set; }

        ///// <summary>
        ///// 角色可用的权限集
        ///// </summary>
        //public virtual ICollection<Permissions> Permissions { get; set; }

        ///// <summary>
        ///// 项目角色可访问的文档权限
        ///// </summary>
        //public virtual ICollection<ProjectDocActions> DocActions { get; set; }

        /// <summary>
        /// 排序值
        /// </summary>
        public virtual long Sortfactor { get; set; }

        /// <summary>
        /// 内置关联角色
        /// </summary>
        public virtual InternalRole InternalRole { get; set; }


    }


    public enum InternalRole
    {
        项目经理 = 10,
        访客 = 20,
        项目群经理 = 30,
        QEHS = 40,
        其它 = 50,
        分析员 = 60,
        成员 = 70
    }
}
